
		
			

local lists = {
    {
        '|cffff6800力量|r',
        '|cffff6800升级力量|r',
        '|cffff6800每秒力量|r',
        '|cffff6800杀敌力量|r',
        '|cffff6800力量加成|r',
        '|cffff6800最终力量加成|r',
    },
    {
        '|cff00ff00敏捷|r',
        '|cff00ff00升级敏捷|r',
        '|cff00ff00每秒敏捷|r',
        '|cff00ff00杀敌敏捷|r',
        '|cff00ff00敏捷加成|r',
        '|cff00ff00最终敏捷加成|r',
    },
    {
        '|cff00ccff智力|r',
        '|cff00ccff升级智力|r',
        '|cff00ccff每秒智力|r',
        '|cff00ccff杀敌智力|r',
        '|cff00ccff智力加成|r',
        '|cff00ccff最终智力加成|r',
    },
    {
        '|cffffcc99攻击力|r',
        '|cffffcc99升级攻击|r',
        '|cffffcc99每秒攻击|r',
        '|cffffcc99杀敌攻击|r',
        '|cffffcc99攻击加成|r',
        '|cffffcc99最终攻击加成|r',
    },
    {
        '|cff99cc00生命值|r',
        '|cff99cc00升级生命|r',
        '|cff99cc00每秒生命|r',
        '|cff99cc00杀敌生命|r',
        '|cff99cc00生命加成|r',
        '|cff99cc00最终生命加成|r',
    },
    {
        '|cff99cc00生命恢复|r',
        '|cff99cc00生命恢复加成|r',
        '|cff99cc00最终生命恢复|r',
        '|cff99cc00护甲|r',
        '|cff99cc00护甲加成|r',
        '|cff99cc00最终护甲加成|r',
    },
    {
        '|cffffcc99物理固伤|r',
        '|cffffcc99物理固伤加成|r',
        '|cffffcc99最终物理固伤加成|r',
        '|cffffcc99魔法固伤|r',
        '|cffffcc99魔法固伤加成|r',
        '|cffffcc99最终魔法固伤加成|r',
    },
    {
        '|cffff99cc暴击率|r',
        '|cffff99cc暴击伤害|r',
        '|cffff99cc物理伤害|r',
        '|cffff99cc魔法伤害|r',
        '|cffff99cc伤害增幅|r',
        '|cffff99cc最终伤害|r',
    },
    {
        '|cff99cc00攻击速度|r',
        '|cff99cc00攻击间隔|r',
        '|cff99cc00多重数量|r',
        '|cff99cc00多重伤害|r',
        '|cff99cc00弹射次数|r',
        '|cff99cc00弹射伤害|r',
    },
    {
        '|cffffff00每秒金币|r',
        '|cffffff00每秒经验|r',
        '|cffffff00升级木头|r',
        '|cffffff00经验加成|r',
        '|cffffff00杀敌加成|r',
        '|cffffff00魔法恢复|r',
    },{
        '|cffcc99ff技能冷却|r',
        '|cffcc99ff装备加成|r',
        '|cffcc99ff伤害减免|r',
        '|cffcc99ff百分比生命恢复|r',
    },{
        '|cffff6600对挑战怪增伤|r',
        '|cffff6600对进攻怪增伤|r',
        '|cffff6600对BOSS增伤|r',
    }
}
local data = {}
for _,da in ipairs(load_excel('基础设定.xlsx','属性定义')) do
    local key2 = da.name
    local key1 = da.key or key2
    data[key1] = da
    data[key2] = da
end

local is_race = {}
local colors = {0xff00ffff,0xffff9900,0xff00ffff,0xffff9900,0xff00ffff}
local w,h = 220,25
local x0,y0 = 10,65
local w1,h1 = 900,600
local panel = class.panel:builder {
    x = (1920-w1)/2,
    y = 150,
    w = w1,
    h = h1,
    --fdf = 'tooltip_backdrop0',
    normal_image = [[textures\black32.blp]],
    title = {
        type = 'text',
        text = '详细信息',
        font_size = 20,
        justH = "CENTER",
        justV = "MIDDLE",
        h = 80,
    },
    show_flag = false,
}

panel.items = {}
panel:set_level(99)
local fmt = '(%|[cC]%w%w%w%w%w%w%w%w)(.-)(%|[Rr])'
local backs = {
    [[ui\Tab\暗.tga]],
    [[ui\Tab\亮.tga]],
}
for i=0,#lists,4 do
    local max_h = 0
    for b=1,4 do
        local da = lists[i+b]
        local color = colors[b]
        if da then
            max_h = math.max(max_h,(#da * h))
            for a,name in ipairs(da) do
                local _,title = name:match(fmt)
                if not title then
                    title = name
                end
                local data = data[title]
                if data and data.is_race then
                    is_race[title] = true
                end
                local x,y = x0 + (b-1)*w,y0 + (a-1)*h
                local text1 = panel:add_text(name,x,y,w*0.65,h,12,5)
                local text2 = panel:add_text('10',x+text1.w,y,w - text1.w,h,12,5)
                --text1:set_color(color)
                text2.name = title
                text2.key = data and data.key or title
                table.insert(panel.items,text2)
            end
        end
    end
    y0 = y0 + max_h + h
end



function panel:update()
    local player = ac.player.self
    local hero = player.hero
    if hero then
        for _,text in ipairs(self.items) do
            local name = text.name
            local key = text.key
            local num = hero:get(key)
            local ex = ''
            if is_race[name] then
                ex = '%'
            end
            if num<10 and num>-10 and num~=0 then
                text:set_text(('%0.1f%s|n'):format(num,ex))
            else
                text:set_text(('%0.f%s|n'):format(num,ex))
            end
        end
    end
end

local button = class.button.create('',550,830,120,50)
button:add_frame('tooltip_backdrop0')
button.text = button:add_text('详细属性',0,0,nil,nil,size or 12,5)
button:set_highlight([[UI\Widgets\BattleNet\bnet-button01-highlight-mouse.blp]])

function button:on_button_mouse_enter()
    panel:show()
end

function button:on_button_mouse_leave()
    panel:hide()
end

ac.game:notify('游戏-注册显示UI',panel)